1. Field of the Invention
This invention relates to computer based graphics applications employing a drawing stylus or cursor movement device, or the like, and more particularly, to a method and apparatus for line width selection using the drawing stylus or cursor movement device.
2. Discussion of the Related Art
Computer based graphics applications utilize the operating systems of the computers upon which the applications are installed and being run. A typical computer based graphics application may utilize a computer, monitor or display device, keyboard, and mouse. Alternatively, the graphics application may utilize a pen and a tablet for entering drawing information into the computer.
When using a computer based graphics application, application users often need to change the effective line width of their stylus, whether the stylus is a pen or a mouse. In order to do so, the user typically must navigate through a series of menus, smart icons, control buttons and/or data entry fields before making a final line width selection. The stylus itself is often used for navigating through the series of menus, smart icons, control buttons, and data entry fields. Such navigation can become time-consuming and tedious if the user is frequently changing the line widths throughout the course of a drawing session. In addition, the use of the stylus as the pointing device during the line width selection process results in a further disadvantage to the user in that the selected width can not be seen in context with the drawing until the user has made a selection and begun to draw with the new selection. In other words, the user cannot view a selected width immediately in the drawing area. If the width is found to be unacceptable by the user, an "undo" or "erase" function must then be selected, thereby creating another frustrating distraction for the user. Finally, the granularity and size of the line width selections is usually quite limited, often due to the mere fact that only a few representative images depicting the widths can be displayed at any one time.
In summary, various problems associated with known line-width selection methods are that the methods involve the use of menu lists, smart icons, control buttons (such as, increment and decrement arrows), and/or a requirement for data entry fields. In addition, a stylus must be moved from the drawing area for making a line-width selection. A limited number and range of line-widths are usually available. A limited granularity of widths is also typically available. Furthermore, one cannot view a selected width immediately in the drawing area.
In addition to the above, one example of line width selection for a computer based graphics application is disclosed in U.S. Pat. No. 4,831,568, entitled "HANDWRITTEN-IMAGE INPUT APPARATUS" and issued May 16, 1989 to Ito. The '568 handwritten-image apparatus includes a pen, a controller, a display device, and a tablet. The tablet detects the position of the pen thereon. The display device displays a trace made by the pen on the tablet, under control of the controller. The pen includes a switch for detecting whether or not the pressure applied to the pen exceeds a predetermined value. When the switch is ON (i.e., the pressure applied to the pen exceeds a predetermined value), the controller controls the display device to increase the line width of the trace, made by the pen, which is displayed on the display device. When the switch is OFF (i.e., the pressure applied to the pen is less than a predetermined value), the controller controls the display device to decrease the line width of the trace, made by the pen, which is displayed on the display device. When the width of the displayed trace made by the pen reaches a predetermined value, the controller does not increase the line width any further.
As discussed above, the '568 handwritten-image apparatus discloses a method for line width selection; however, the '568 apparatus suffers various disadvantages. For instance, the '568 apparatus is pressure sensitive, with the pressure controlling the pen trace width throughout an entire drawing session. As a result, unintentional changes in pressure may result in unintentional and undesirable changes in line width. Another disadvantage of the '568 apparatus is that its line width is a function of the overlaying of static images (i.e., bitmaps), which is further dependent upon an available memory of the system running the drawing application for a range of sizes and resolution. While an interpolation is performed to smooth edges between patterns along a line, the '568 apparatus still depends upon the available static pattern images to provide the necessary changes in line width size.
Use of static image patterns by the '568 apparatus to draw a line also results in a less efficient mechanism for handling both screen resolution changes and color changes. For example, in general, bitmaps contain their own color information. Therefore, if it is desired to change the color(s) in the bitmaps, then it would require manipulating the bitmap information in each image. The latter is normally a complex task. Furthermore, with any changes of display resolution by the user of the '568 apparatus, the user cannot expect to be able to draw a maximum line width that is the same viewable size across all resolutions. That is, for example, if in a VGA mode the maximum pattern size allows a line 2 inches in width, then a super-VGA mode with twice the resolution would now allow only a maximum line width of 1 inch. This is a distinct deficiency.
Still further, the '568 apparatus is "hardware constrained". That is, it is intimately intertwined with special hardware and is not believed to be easily portable to standard, user initiated event-driven operating systems. In addition, most bitmap representations are specific to an individual operating system or a subset of operating systems. Therefore, an application using the method disclosed by the '568 patent would probably have to maintain separate bitmap images for each operating system it wants to work on. While the later is not extremely difficult, it does add an undesirable extra element of complexity.